Applying Rewriting Techniques to the Verification of Erlang Processes
نویسندگان
چکیده
Erlang is a functional programming language developed by Ericsson Telecom which is particularly well suited for implementing concurrent processes. In this paper we show how methods from the area of term rewriting are presently used at Ericsson. To verify properties of processes, such a property is transformed into a termination problem of a conditional term rewriting system (CTRS). Subsequently, this termination proof can be performed automatically using dependency pairs. The paper illustrates how the dependency pair technique can be applied for termination proofs of conditional TRSs. Secondly, we present two reenements of this technique, viz. narrowing and rewriting dependency pairs. These reenements are not only of use in the industrial application sketched in this paper, but they are generally applicable to arbitrary (C)TRSs. Thus, in this way dependency pairs can be used to prove termination of even more (C)TRSs automatically.
منابع مشابه
Towards Erlang Verification by Term Rewriting
This paper presents a transformational approach to the verification of Erlang programs. We define a stepwise transformation from (first-order) Erlang programs to (non-deterministic) term rewrite systems that compute an overapproximation of the original Erlang program. In this way, existing techniques for term rewriting become available. Furthermore, one can use narrowing as a symbolic execution...
متن کاملApplying Rewriting Techniques to the Veriication of Erlang Processes
Erlang is a functional programming language developed by Ericsson Telecom which is particularly well suited for implementing concurrent processes. In this paper we show how methods from the area of term rewriting are presently used at Ericsson. To verify properties of processes, such a property is transformed into a termination problem of a conditional term rewriting system (CTRS). Subsequently...
متن کاملEquational Abstractions for Model Checking Erlang Programs
This paper provides a contribution to the formal verification of programs written in the concurrent functional programming language Erlang, which is designed for telecommunication applications. It presents a formal description of this language in Rewriting Logic, a unified semantic framework for concurrency which is semantically founded on conditional term rewriting modulo equational theories. ...
متن کاملEffective Techniques for Stateless Model Checking
Aronis, S. 2018. Effective Techniques for Stateless Model Checking. Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology 1602. 56 pp. Uppsala: Acta Universitatis Upsaliensis. ISBN 978-91-513-0160-0. Stateless model checking is a technique for testing and verifying concurrent programs, based on exploring the different ways in which operations execut...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999